package com.jisf.driver.service;

import com.jisf.driver.entity.po.Role;
import com.baomidou.mybatisplus.extension.service.IService;
import com.jisf.driver.entity.vo.RoleAddRequestVo;
import com.jisf.driver.entity.vo.RoleListVo;
import com.jisf.driver.response.IErrorCode;

import java.util.List;

/**
 * <p>
 * 角色表 服务类
 * </p>
 *
 * @author jisf
 * @since 2022-04-08
 */
public interface IRoleService extends IService<Role> {

    /**
     * 获取角色列表
     * @return
     */
    List<RoleListVo> roleList();

    /**
     * 添加角色
     * @param roleAddRequestVo
     * @return
     */
    IErrorCode roleAdd(RoleAddRequestVo roleAddRequestVo);

    /**
     * 获取所有角色
     * @return
     */
    List<RoleListVo> roleAll();

    /**
     * 改变角色状态
     * @param roleId
     * @param status
     * @return
     */
    IErrorCode roleChangeStatus(Integer roleId, String status);

    /**
     * 删除角色
     * @param roleId
     * @return
     */
    IErrorCode roleDelete(Integer roleId);

    /**
     * 修改角色
     * @param roleListVo
     * @return
     */
    IErrorCode roleUpdate(RoleListVo roleListVo);

}
